package com.edu.bhu.admin.domain;

import java.util.Date;

import com.edu.bhu.common.annotation.Excel;
import com.edu.bhu.common.core.domain.BaseEntity;
import com.edu.bhu.common.core.domain.entity.SysUser;
import com.edu.bhu.system.mapper.SysUserMapper;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 记录对象 pre_record
 *
 * @author yutianyang
 * @date 2022-04-06
 */
public class PreRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 记录主键ID */
    private Long recordId;

    /** 关联用户ID */
    @Excel(name = "关联用户ID")
    private Long userId;
    private SysUser sysUser;

    private Long status;

    public Long getStatus() {
        return status;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public SysUser getSysUser() {
        return sysUser;
    }

    public void setSysUser(SysUser sysUser) {
        this.sysUser = sysUser;
    }

    /** 关联地点ID */
    @Excel(name = "关联地点ID")
    private Integer areaId;
    private PreArea preArea;

    /** 内容 */
    @Excel(name = "内容")
    private String content;

    /** 提交时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date time;

    /** 记录类型：1.离校 2.返校 */
    @Excel(name = "记录类型：1.离校 2.返校")
    private Long type;

    public void setRecordId(Long recordId)
    {
        this.recordId = recordId;
    }

    public Long getRecordId()
    {
        return recordId;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setContent(String content)
    {
        this.content = content;
    }

    public Integer getAreaId() {
        return areaId;
    }

    public void setAreaId(Integer areaId) {
        this.areaId = areaId;
    }

    public String getContent()
    {
        return content;
    }
    public void setTime(Date time)
    {
        this.time = time;
    }

    public Date getTime()
    {
        return time;
    }
    public void setType(Long type)
    {
        this.type = type;
    }

    public Long getType()
    {
        return type;
    }

    public PreArea getPreArea() {
        return preArea;
    }

    public void setPreArea(PreArea preArea) {
        this.preArea = preArea;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("recordId", getRecordId())
            .append("userId", getUserId())
            .append("areaId", getAreaId())
            .append("content", getContent())
            .append("time", getTime())
            .append("type", getType())
            .toString();
    }
}
